5
תגובות
אני מריץ דפים בAJAX שמשתמשים ב"לונג".
והמטרה שלי היא לזהות כשאר הדף מחזיר שגיאת שרת למשל עקב חיבור לאינטרניט או בעיות קליטה שונות
אך הבעיה היא שכאשר ניסיתי להשתמש בSTATUSCODE הוא לא החזיר לי שום שגיאה אלא פעל כרגיל
וגם כאן לא התקבלה שום התראת DEAD
ישנה איזו שהיא דרך לזהות כאשר הדף מאבד את התקשרות ,בצד הלקוח (JS)?
והמטרה שלי היא לזהות כשאר הדף מחזיר שגיאת שרת למשל עקב חיבור לאינטרניט או בעיות קליטה שונות
אך הבעיה היא שכאשר ניסיתי להשתמש בSTATUSCODE הוא לא החזיר לי שום שגיאה אלא פעל כרגיל
if(xmlhttp.status>499)alert("dead");
וגם כאן לא התקבלה שום התראת DEAD
ישנה איזו שהיא דרך לזהות כאשר הדף מאבד את התקשרות ,בצד הלקוח (JS)?
5 תשובות
אתה גם צריך לבדוק את הסטטוס של הבקשה, לראות שהיא הושלמה.
או בקוד קצר:
if(xmlhttp.readyState==4 && xmlhttp.status>499) {
alert("dead");
}
alert("dead");
}
ובכללי יש הרבה יותר סטטוסים מ500..
אז תבדוק גם אותם.. AKA:
if(xmlhttp.readyState==4 && xmlhttp.status != 200) {
alert("dead");
}
alert("dead");
}
פעם הבאה תקרא תיעוד (documentation) של פונקיות, זה יעזור לך מאוד ויחסוך את זמן ההמתנה לתשובות..
ענה
itamarhadad
ב
19 ליוני 2013
#
אני מחפש שגיאות שרת מיכיוון ושגיאות 400 של קבצים ו300 של כיוונון מחדש לא יופיעו לי
אבל שגיאות 500+ עלולים להופיע בסבירות גבוהה מאוד.
גם כשהדף מת כביכול הוא עדיין נכנס לתוך הIF של ה200 כלומר הסטטוס שלו לא משתנה בכלל
if(xmlhttp.readyState==4&&xmlhttp.status==200)
ואז הוא מחזיר ERROR בJS אחרי שהוא בפנים
ענה
itamarhadad
ב
19 ליוני 2013
#
xmlhttp.onreadystatechange=function(){
if(xmlhttp.readyState==4&&xmlhttp.status>499)alert("dead");
else if(xmlhttp.readyState==4&&xmlhttp.status==200)alert();
}
if(xmlhttp.readyState==4&&xmlhttp.status>499)alert("dead");
else if(xmlhttp.readyState==4&&xmlhttp.status==200)alert();
}